package demo6;

public class Test10 {

    public static void main(String[] args) throws InterruptedException {
        // 当我们在这里将isQUit设置成局部变量时，
        boolean isQuit=false;
        Thread t = new Thread(() -> {
            // 此时在这里就涉及到变量捕获的问题：变量捕获的成员变量一般是final修饰的要么就是类似于final(不改变的变量)
            while (!isQuit) {
                System.out.println("线程开始");
                try {
                    Thread.sleep(1000);
                } catch (InterruptedException e) {
                    throw new RuntimeException(e);
                }
                System.out.println("线程结束");
            }
        });
        t.start();
        // 如果在这里修改isQuit的值，那么上面Thread线程中的变量捕获就会出现问题
        //isQuit=true;
        Thread.sleep(1000);
        System.out.println("+++++++");
    }
}
